Atividade Prática Supervisionada - APS

Ciência das Redes - CAIA012 PPGCA / CAIA0022 CPGEI

Criação e Análise de Rede de Capacidade de Transporte Público em Curitiba

Discentes: Brendon Leonam Pasquim e Bruno Walter

Sumário

  1. Objetivos
  2. Considerações Iniciais / Metodologia
  3. Input de dados e definição de funções
    1. Parâmetros de Entrada
    2. Dependências
    3. Dados de Saída
  4. Métricas da Rede
    1. Número de nós
    2. Número de arestas
    3. Centralidade de grau
    4. Centralidade de intermediação
    5. Centralidade de proximidade
    6. Centralidade de autovetor
    7. Coeficiente de clusterização
    8. Distribuição de graus
  5. Topologia da Rede
    1. Circular Layout
    2. Random Layout
    3. Spring Layout
  6. Visualizações com Gephi
    1. Terminais, pontos e linhas
    2. Rede de Capacidades
  7. Considerações Finais

1. Objetivos

  1. Construir uma rede de terminais e pontos de ônibus, interligando-os através de Linhas de ônibus que por eles atravessam.
  2. Ranquear os terminais de integração, baseando-se nas métricas de centralidade de redes.
  3. Produzir visualizações do grafo que contribuam para compreensão de características da rede.

2. Considerações Iniciais / Metodologia

A cidade de Curitiba possui 23 terminais, 6900 pontos de ônibus e 400 linhas de ônibus. Estes números expressivos não consideram a infraestrutura metropolitana, que agrega em cobertura e disponibilidade, mas também em complexidade.

Com o objetivo de viabilizar a construção da rede proposta, decidiu-se considerar apenas terminais e linhas municipais de Curitiba, bem como um subconjunto de terminais. Os terminais escolhidos foram:

  1. Terminal Boqueirão
  2. Terminal Cabral
  3. Terminal Campina do Siqueira
  4. Terminal Capão da Imbuia
  5. Terminal Pinheirinho
  6. Terminal Portão

Estes terminais foram escolhidos de forma arbitrária, baseando se no itinerário das linhas que por ele percorriam, bem como no conhecimento prévio dos autores em relação aos mesmos.

A partir destes terminais o script implementado (exposto na seção 3) identificou as linhas que por eles passavam, bem como os pontos de ônibus utilizados por estas linhas.

Os terminais e pontos de ônibus são identificados como nós na rede. As arestas representam por quais pontos ou terminais dada linha passa. Pontos e terminais podem estar presentem em mais de uma linha de ônibus, ou seja, são reutilizados. A capacidade de transporte de passageiros dos ônibus que percorrem uma linha é representada como o peso da aresta.

Nesse sentido, notou-se que contruir a rede reutilizando os pontos tornaria a análise de capacidade de transporte mais onerosa, visto que, ao construir a rede as capacidades iriam se sobrepor (a aresta que conecta o ponto teria que armazenar um peso para cada linha).

Por isso, decidiu-se que apenas terminais de integração seriam reutilizados. Pontos de ônibus seriam plotados de acordo com a linha e, mesmo que na vida real representassem o mesmo ponto físico, seriam plotados uma vez para cada linha que os utilizassem. Desta forma, foi possível garantir que cada aresta apresentasse apenas um peso.

3. Input de dados e definição de funções

Nesta seção são apresentadas as funções e os requisitos necessários para a construção da rede de capacidades.

3.1 Parâmetros de Entrada

  1. Arquivo CSV contendo as linhas e pontos de ônibus. Este arquivo foi obtido do portal da C3SL da UFPR (https://dadosabertos.c3sl.ufpr.br/). O arquivo escolhido foi aquele gerado em 08/03/2022 (2022_03_08_pontosLinha.csv);

  2. Terminais de Integração a serem plotados (definidos na variável "terminais").

3.2 Dependências

As bibliotecas utilizadas foram:

  1. NetworkX para criação de redes complexas;
  2. Pandas para manipulação e filtragem de dados;
  3. Matplotlib para plotagem de gráficos.

3.3 Dados de Saída

  1. Rede NetworkX do tipo DiGraph (Grafo com arestas direcionadas);
  2. Arquivo GML "Todos_Terminais-Directed.gml". Utilizado posteriormente no software Gephi.

4. Métricas da Rede

4.1 Número de nós

4.2 Número de arestas

4.3 Centralidade de grau

4.4 Centralidade de intermediação

4.5 Centralidade de proximidade

4.6 Centralidade de autovetor

4.7 Coeficiente de clusterização

4.8 Distribuição de graus

É interessante notar que boa parte dos nós tem baixo grau. Baseando-se no ranqueamento disponível na Seção 4.3 é possível afirmar que os nós de maior graus são terminais, podendo portando serem tratados como hubs.

5. Topologia da Rede

5.1 Circular Layout

5.2 Random Layout

5.3 Spring Layout

6. Visualizações com Gephi

6.1 Terminais, pontos e linhas.

Essa imagem apresenta todos os terminais, pontos e linhas identificadas pelo script de criação da rede. Nela nota-se:

  1. Terminais de integração identificados como nós vermelhos grandes.
  2. Pontos de ônibus identificados por nós de tamanhos menores do que dos terminais. Nós da mesma cor fazem parte da mesma linha/itinerário de ônibus.
  3. Linhas de ônibus identificados por arestas entre os nós. Nessa visualização não são considerados o peso das arestas nem direção.

Todos-Corrigido.png

6.2 Rede de Capacidades

Essa imagem apresenta os terminais, pontos e linhas de ônibus destacando:

  1. Terminais de integração como nós na cor vermelha. O tamanho dos nós é variável e proporcional ao grau total do nó.
  2. Pontos de ônibus como nós. Nós da mesma cor fazem parte da mesma linha/itinerário de ônibus.
  3. Linhas de ônibus como arestas direcionadas. A espessura da aresta é proporcional a capacidade de transporte de passageiros do tipo de ônibus que percorre a linha. Essa capacidade foi definida na seção 3.

Todos_Terminais_Grau.png

7. Considerações Finais

O atual trabalho teve como objetivo construir uma rede de capacidade de transporte dos ônibus públicos da cidade de Curitiba. Para isso, se coletou e tratou os dados públicos abertos fornecidos pelo IPPUC e URBS. Nestes dados, identificou-se os terminais de integração e pontos de ônibus, bem como as linhas de ônibus que os interligavam.

Com os dados tratados, construiu-se uma rede em que Terminais e Pontos de ônibus são nós e as linhas de ônibus são arestas. Cada aresta tem um peso que representa a capacidade de pessoas que podem ser transportadas nesta linha. É importante notar que, o peso atribuído a aresta representa a capacidade do tipo de ônibus que percorre a linha e não a capacidade total de transporte em um dado momento.

Como resultado é possível notar a grande integração entre terminais através de linhas do tipo expresso e ligeirão (arestas mais grossas na imagem da seção 6.2. Apesar disso, é importante ressaltar o número e abrangência de linhas do tipo interbairros (linhas menos grossas na imagem da seção 6.2)

Dentre outros achados, partindo dos 6 (seis) terminais iniciais, considerando as linhas que neles passam, foi possível verificar que todos os terminais de Curitiba poderiam ser acessados. Ou seja, é um forte indicativo do quão integrada é a rede de transporte de Curitiba.

Também foi interessante verificar que o Terminal Capão Raso, apesar de não estar entre os escolhidos inicialmente, apareceu bem localizado nas métricas de centralidade.

Por fim, destaca-se a necessidade de ampliar o estudo para trabalhar com todos os terminais e linhas de Curitiba, o que poderá oferecer insights mais significativos e próximos à realidade. Além disso, nota-se a possibilidade de gerar uma rede de capacidades consolidadas, em que, linhas que compartilham o itinerário completo ou parcial são analisadas conjuntamente.